package com.example.sfm.pojo.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

@Data
@Schema(name = "成绩导出视图", description = "用于导出学生成绩信息的视图对象")
public class GradesExportVo {
    @ExcelProperty("学号")
    @Schema(description = "学生的学号")
    private String studentNumber;

    @ExcelProperty("课程编号")
    @Schema(description = "课程的编号")
    private String courseCode;

    @ExcelProperty("课程名称")
    @Schema(description = "课程的名称")
    private String courseName;

    @ExcelProperty("成绩")
    @Schema(description = "学生的课程成绩")
    private BigDecimal score;

    @ExcelProperty("等级")
    @Schema(description = "成绩对应的等级")
    private String gradeName;

    @ExcelProperty("考试日期")
    @DateTimeFormat("yyyy-MM-dd")
    @Schema(description = "考试的日期，格式：yyyy-MM-dd")
    private LocalDate examDate;

    @ExcelProperty("备注")
    @Schema(description = "成绩的备注信息")
    private String remark;

    @ExcelProperty("录入时间")
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @Schema(description = "成绩录入的时间，格式：yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdAt;
}